📘 NVSHMEM 并行通信
🧩 30章 · 模型并行实战
1
01
NVSHMEM 概述
什么是NVSHMEM,与MPI/CUDA-Aware MPI对比
2
02
环境搭建
安装、编译选项、CUDA & GDRCopy依赖
3
03
核心概念
PE、对称内存、对称堆、对称队列
4
04
初始化与终结
nvshmem_init/finalize,PE查询函数
5
05
点对点通信
nvshmem_put/get/put_signal
6
06
集合通信
Barrier, Broadcast, Reduce, Alltoall
7
07
信号量机制
nvshmem_signal_xxx 轻量级同步
8
08
锁机制
nvshmem_lock/unlock 保护临界区
9
09
原子操作
原子加/交换/CAS,无锁数据结构
10
10
Team 集合
Team创建、拆分、子通信域
11
11
内存模型
对称内存分配,静态/动态,对齐
12
12
流与异步操作
CUDA Stream交互,异步put/get
13
13
P2P 与 NVLink
利用NVLink优化节点内通信
14
14
多节点通信
InfiniBand/RoCE,GDR+NVSHMEM
15
15
深度学习模型并行背景
数据并行 vs 模型并行,张量&流水线
16
16
张量并行通信模式
AllReduce/ReduceScatter in Transformer
17
17
流水线并行通信模式
点对点通信在Micro-batch间传递
18
18
NVSHMEM 实现 AllReduce
基于Put/Get的Ring AllReduce
19
19
NVSHMEM 实现 ReduceScatter
高效张量并行梯度同步
20
20
NVSHMEM 实现 P2P 通信
流水线并行传递Activation & Gradient
21
21
同步与异步调度
NVSHMEM + CUDA Graph,减少Launch开销
22
22
内存优化
对称内存池管理,避免碎片,动态扩容
23
23
故障恢复
容错机制,节点故障后通信重建
24
24
性能调优
环境变量详解 (SYMMETRIC_SIZE, DISABLE_P2P...)
25
25
Profiling 工具
Nsight Systems & 内置Profiler
26
26
案例实战:张量并行
Megatron-LM 风格 NVSHMEM 实现
27
27
案例实战:流水线并行
1F1B 调度 NVSHMEM 实现
28
28
混合并行
NVSHMEM 在3D并行中的角色
29
29
未来展望
与NCCL融合,DPU卸载,SHARP支持
30
30
总结与最佳实践
编程模型总结,常见陷阱与性能建议